package action.product;

import helper.DESHelper;
import helper.MD5Helper;

import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts2.ServletActionContext;
import org.apache.struts2.components.If;

import com.opensymphony.xwork2.ActionContext;

import util.GeneralAction;
import util.Globals;
import vo.ProductVo;
import vo.UserVo;
import entity.Product;
import entity.ProductCate;
import entity.User;


/**
 * @author Chigco.Orc
 *	商品action
 */
public class ProductAction extends GeneralAction{
		
		
		private UserVo uVo;
	
		public String action;
		
		
		public List<ProductCate> data;
		public String select_cate;
		public String select_all;
		public String Selltype;
		public String pc_id;
		
		public String toOwnProduct(){
			
			if("add".equals(action)){
				/*
				 * 查找商品一级选项
				 */
				System.out.println("页面获取商品一级选项！");
				if(Globals.firstProjectMenu == null ||  Globals.firstProjectMenu.size() == 0){
					data = df.getProductCateDao().findProductCate();
					System.out.println("从数据库中获取商品一级选项data:"+ data);
					Globals.firstProjectMenu = data;
				}else{
					System.out.println("一级商品选项直接从静态Globals.list中获取！");
					data = Globals.firstProjectMenu;
				}
				return "toAddProduct";
			}
			if("ajax_get_attribute".equals(action)){
					System.out.println(pc_id);
//				}
//				Selltype = Selltype.replace("&gt;", "&gt;&gt;");
				System.out.println("select_cate:"+select_cate+"\nselect_all:"+select_all+"\nSelltype:"+Selltype);
				//numList.clear();
				//numList.add(select_all.charAt(0));
				//numList.add(select_all.charAt(2));
				//System.out.println("test:"+Selltype+"\t"+select_cate+"\t"+select_all);
				//data = new ArrayList();
//				ls = new ArrayList();
				//data = this.pDao.findProductCate(numList);
				//System.out.println("New->data.toArray:"+data.toArray()[0].toString() + "data2:" +data.toArray()[1].toString());
				//data.toArray();
				//System.out.println("ls:"+ls.get(0));
				//System.out.println("data:"+ a.get(0).getName()+ "\t size:" + a.size());
				return null;
			}
			return null;
		}
		
		/**
		 *查找商品级联选项 
		 */
		
		public String id;
		public String toProductSecond(){
			if("list".equals(action)){
				System.out.println("Jquery获取级联商品选项调用方法！ id ：" + id);
				HttpServletResponse response = ServletActionContext.getResponse();
				response.setContentType("text/html; charset=UTF-8");
				List ls = null;
				//获取2级商品选项
					System.out.println("到数据库查询商品级联选项!");
					ls = df.getProductCateDao().get(Long.valueOf(id)).getProducts();
					Globals.secondProjectMenu = ls;
					for (int i = 0; i < ls.size(); i++) {
						try {
								response.getWriter().print(((ProductCate)ls.get(i)).getId() + "|" + ((ProductCate)ls.get(i)).getName() + "|" +"!" + "||");
						} catch (IOException e) {
							e.printStackTrace();
						}
					}
				}
			return null;
		}
		
		/**
		 * 查询我的商品
		 */
		public List<ProductVo> ls;
		public String optionId;
	
		public String sellType;	//交易类型：空为所有，0拍卖，1一口价，2团购
		public String pType;		//宝贝类型：空为所有，0全新，1二手，2闲置
		public String keyword;	//关键字
		public String toMyProduct(){
			HttpServletRequest request = ServletActionContext.getRequest();
			System.out.println("request:"+request.getRequestURL()+"\taction:"+action);
			if("list".equals(action)){
				
//				if(ActionContext.getContext().getSession().get(Globals.userProductsList) == null){
//					ActionContext.getContext().getSession().put(Globals.userProductsList, df.getUserDao().get(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getId()).getProducts()); 
//				}
//				
				System.out.println("我的商品："+ ((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().size() );
					ls = new ArrayList<ProductVo>();
					/*
					 * 出售中的
					 */
					if( "sell".equals(optionId) ){
						for (int i = 0; i < ((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().size(); i++) {
							if(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i).getState() == 0 ){		//直接从session中得到用户相关的产品
//								System.out.println("new前，i:"+i+"\tsize:"+((List<Product>)ActionContext.getContext().getSession().get(Globals.userProductsList)).size()+"ls:"+ls.size());
//								ls.add(new ProductVo());
//								System.out.println("new后，i:"+i+"\tsize:"+((List<Product>)ActionContext.getContext().getSession().get(Globals.userProductsList)).size()+"ls:"+ls.size());
//								ls.get(i).setName(((List<Product>)ActionContext.getContext().getSession().get(Globals.userProductsList)).get(i).getName());									//    ( tempList.get(i).getPublishDate() + tempList.get(i).getInDate() * 24 * 60 * 60 * 1000 ) - System.currentTimeMillis()
//								ls.get(i).setId(MD5Helper.enc(String.valueOf(((List<Product>)ActionContext.getContext().getSession().get(Globals.userProductsList)).get(i).getId())));//(（商品发布的时间(时间戳)+设置的天数(int)）-当前时间)
//								ls.get(i).setOverDate(new SimpleDateFormat("yyyy-MM-dd").format(((List<Product>)ActionContext.getContext().getSession().get(Globals.userProductsList)).get(i).getPublishDate() + ((List<Product>)ActionContext.getContext().getSession().get(Globals.userProductsList)).get(i).getInDate() * 24 * 60 *60 * 1000));
//								ls.get(i).setPublishDate(new SimpleDateFormat("yyyy-MM-dd").format(((List<Product>)ActionContext.getContext().getSession().get(Globals.userProductsList)).get(i).getPublishDate()));
////								System.out.println("tempList.get(i).getPublishDate():"+new SimpleDateFormat("dd天HH小时mm分").format(Globals.userProductsList.get(i).getPublishDate())+" \ntempList.get(i).getInDate() * 24 * 60 * 60 * 1000:"+new SimpleDateFormat("dd天HH小时mm分").format( 7 * 24 * 60 * 60 * 1000)+"\nSystem.currentTimeMillis():"+new SimpleDateFormat("dd天HH小时mm分").format(System.currentTimeMillis()));
//								ls.get(i).setState(((List<Product>)ActionContext.getContext().getSession().get(Globals.userProductsList)).get(i).getState());
//								ls.get(i).setPrice(((List<Product>)ActionContext.getContext().getSession().get(Globals.userProductsList)).get(i).getPrice());
//								ls.get(i).setCount(((List<Product>)ActionContext.getContext().getSession().get(Globals.userProductsList)).get(i).getCount());
								ls = loopList(i, ls);
							}
						}
						return "toOwnProductList";
					}
					
					/*
					 * 仓库中的
					 */
					if("listinstock".equals(optionId)){
						for (int i = 0; i < ((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().size(); i++) {
							if(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i).getState() == 1 ){
//								System.out.println("new前，i:"+i+"\tsize:"+((List<Product>)ActionContext.getContext().getSession().get(Globals.userProductsList)).size()+"ls:"+ls.size());
//								ls.add(new ProductVo());
//								System.out.println("new后，i:"+i+"\tsize:"+((List<Product>)ActionContext.getContext().getSession().get(Globals.userProductsList)).size()+"ls:"+ls.size());
//								ls.get(ls.size()-1).setName(((List<Product>)ActionContext.getContext().getSession().get(Globals.userProductsList)).get(i).getName());									//    ( tempList.get(i).getPublishDate() + tempList.get(i).getInDate() * 24 * 60 * 60 * 1000 ) - System.currentTimeMillis()
//								ls.get(ls.size()-1).setId(MD5Helper.enc(String.valueOf(((List<Product>)ActionContext.getContext().getSession().get(Globals.userProductsList)).get(i).getId())));//(（商品发布的时间(时间戳)+设置的天数(int)）-当前时间)
//								ls.get(ls.size()-1).setOverDate(new SimpleDateFormat("yyyy-MM-dd").format(((List<Product>)ActionContext.getContext().getSession().get(Globals.userProductsList)).get(i).getPublishDate() + ((List<Product>)ActionContext.getContext().getSession().get(Globals.userProductsList)).get(i).getInDate() * 24 * 60 *60 * 1000));
//								ls.get(ls.size()-1).setPublishDate(new SimpleDateFormat("yyyy-MM-dd").format(((List<Product>)ActionContext.getContext().getSession().get(Globals.userProductsList)).get(i).getPublishDate()));
//								ls.get(ls.size()-1).setState(((List<Product>)ActionContext.getContext().getSession().get(Globals.userProductsList)).get(i).getState());
//								ls.get(ls.size()-1).setPrice(((List<Product>)ActionContext.getContext().getSession().get(Globals.userProductsList)).get(i).getPrice());
//								ls.get(ls.size()-1).setCount(((List<Product>)ActionContext.getContext().getSession().get(Globals.userProductsList)).get(i).getCount());
//								j+=1;
								
								ls = loopList(i, ls);
							}
						}
						return "toOwnProductList";
					}
					/*
					 * 已售出的
					 */
					if( "sold".equals(optionId)){
						for (int i = 0; i < ((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().size(); i++) {
							if(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i).getState() == 2){
//								ls.add(tempList.get(i));
								ls.add(new ProductVo());
								ls.get(i).setName(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i).getName());									//    ( tempList.get(i).getPublishDate() + tempList.get(i).getInDate() * 24 * 60 * 60 * 1000 ) - System.currentTimeMillis()
								ls.get(i).setId(MD5Helper.enc(String.valueOf(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i).getId())));//(（商品发布的时间(时间戳)+设置的天数(int)）-当前时间)
								ls.get(i).setState(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i).getState());
//								ls.get(i).setSurplusDate(new SimpleDateFormat("dd天HH小时mm分").format( (Globals.userProductsList.get(i).getPublishDate() + (Globals.userProductsList.get(i).getInDate() * 24 * 60 * 60 * 1000 ) - System.currentTimeMillis() )));
//								System.out.println("tempList.get(i).getPublishDate():"+new SimpleDateFormat("dd天HH小时mm分").format(Globals.userProductsList.get(i).getPublishDate())+" \ntempList.get(i).getInDate() * 24 * 60 * 60 * 1000:"+new SimpleDateFormat("dd天HH小时mm分").format( 7 * 24 * 60 * 60 * 1000)+"\nSystem.currentTimeMillis():"+new SimpleDateFormat("dd天HH小时mm分").format(System.currentTimeMillis()));
								ls.get(i).setPrice(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i).getPrice());
								ls.get(i).setCount(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i).getCount());
							}
						}
						return "toOwnOrder";
					}
					
					/*
					 * 自定义查询
					 */
					if("customFind".equals(optionId)){
						System.out.println("交易类型："+sellType+"\n宝贝类型："+pType+"\n关键字："+keyword);
						for (int i = 0; i <((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().size(); i++) {
							if("".equals(sellType) && "".equals(pType)){
								
							}
							if (((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i).getSellType() == Integer.valueOf(sellType)) {
								
							}
						}
					}
			}
			
			return null;
}
		private List<ProductVo> loopList(int i,List<ProductVo> ls){
			System.out.println("new前，i:"+i+"\tsize:"+((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().size()+"ls:"+ls.size());
			ls.add(new ProductVo());
			System.out.println("new后，i:"+i+"\tsize:"+((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().size()+"ls:"+ls.size());
			ls.get(ls.size()-1).setName(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i).getName());									//    ( tempList.get(i).getPublishDate() + tempList.get(i).getInDate() * 24 * 60 * 60 * 1000 ) - System.currentTimeMillis()
			ls.get(ls.size()-1).setId(DESHelper.encrypt(String.valueOf(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i).getId())));//(（商品发布的时间(时间戳)+设置的天数(int)）-当前时间)
			ls.get(ls.size()-1).setOverDate(new SimpleDateFormat("yyyy-MM-dd").format(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i).getPublishDate() + ((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i).getInDate() * 24 * 60 *60 * 1000));
			ls.get(ls.size()-1).setPublishDate(new SimpleDateFormat("yyyy-MM-dd").format(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i).getPublishDate()));
			ls.get(ls.size()-1).setState(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i).getState());
			ls.get(ls.size()-1).setPrice(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i).getPrice());
			ls.get(ls.size()-1).setCount(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i).getCount());
			System.out.println("loopList循环添加结束");
			return ls;
		}
		
		/**
		 * 商品查看
		 */
		public String toProductView(){
			if("view".equals(action) && pid != null && !"".equals(pid)){
				p = df.getProductDao().get(Long.valueOf(DESHelper.decrypt(pid)));
			}
			return "toProduct";
		}
						
		/**
		 * 购买商品				
		 */
		public String item_id;			//商品的id
		public String toProductBuy(){
			if("buy".equals(action)){
				p = df.getProductDao().get(Long.valueOf(item_id));
				ProductVo pVo = new ProductVo();
				pVo.setId(DESHelper.encrypt(String.valueOf(p.getId())));
				pVo.setName(p.getName());
				pVo.setContent(p.getContent());
				pVo.setCount(p.getCount());
				pVo.setPrice(p.getPrice());
				pVo.setUser(p.getUser());
				if(ActionContext.getContext().getSession().get(Globals.userBuyProducts) != null ){
					//判断购买的商品是否已经在session购物车中了。
					if(isEquals(((List<ProductVo>)ActionContext.getContext().getSession().get(Globals.userBuyProducts)), pVo.getId())){
						System.out.println("第N次。直接session添加");
//						ActionContext.getContext().getSession().put(Globals.userBuyProducts,ls.add(pVo));
						ls = ((List<ProductVo>)ActionContext.getContext().getSession().get(Globals.userBuyProducts));
						ls.add(pVo);
						ActionContext.getContext().getSession().put(Globals.userBuyProducts, ls);
					}
					System.out.println("当前购物车里面有："+((List<ProductVo>)ActionContext.getContext().getSession().get(Globals.userBuyProducts)).size()+"个商品");
				}else {
					ls = new ArrayList<ProductVo>();
					ls.add(pVo);
					ActionContext.getContext().getSession().put(Globals.userBuyProducts, ls);
					System.out.println(ls.get(0).getName());
					System.out.println("第一次放入session购物车！");
				}
				return "toProductBuy";
			}
			return "error";
		}
		//买家和买家是否为同一个人
		private boolean isMyProduct(String pvoId){
			for (int i = 0; i < ((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().size(); i++) {
				if(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i).getId().equals(Long.valueOf(DESHelper.decrypt(pvoId)))){
					return false;
				}
			}
			return false;
		}
		
		//session中是否有同一件的商品
		private boolean isEquals(List<ProductVo> session,String pvoId){
			for (int i = 0; i < session.size(); i++) {
				if(!session.get(i).getId().equals(pvoId)){
					System.out.println("session里面没有同一件商品！");
					return true;
				}
			}
			System.out.println("session里面同一件商品！");
			return false;
		}
		/**
		 * 保存商品
		 * 
		 */
		public String radioSelltype;  // 交易类型 0 拍卖 1 一口价 2 团购
		public String radioType;		  //宝贝类型 0 全新 1 二手 2 闲置
		public String txtPname; //宝贝标题
		public String txtPinfo; //宝贝信息 
		public String txtPstorage; //宝贝数量
		public String minimumBid; //起拍价
		public String system_step;  //加价幅度->系统自动代理加价
		public String price_step;  //加价幅度->自定义
		public String txtPprice;  //一口价
		public String slValiddays; 	//有效期
		public String txtGroupprice; //团购价
		public String txtPoldprice;   //团购的原价
		public String txtGroupmincount;	//团购最小数量
		//所在地
		public String radioTransfee;	//运费 0 卖家承担 1 买家承担
		public String pyTF;	//平邮
		public String kdTF;	//快递
		public String emsTF;	//ems
		public String radioInvoices;		//发票 0无 1有
		public String radioWarranty;	//保修 0无 1有
		public String txtPgenuine;  //正品
		public String txtP7day;      //7天包退还 0：无 1：是
		public String txtRemark; 		//购买须知
		private boolean _now;			//是否立刻发布
		//TODO:
		public String toAddProduct(){
			/*
			 * 添加产品
			 */
			if("save".equals(action)){
				Product product = new Product();
				product.setName(txtPname);
				product.setSellType(Integer.valueOf(radioSelltype));
				product.setProductType(Integer.valueOf(radioType));
				product.setInDate(Integer.valueOf(slValiddays));
				product.setContent(txtPinfo);
				product.setRemark(txtRemark);
				product.setPrice(Float.valueOf(txtPprice));
				product.setCount(Integer.valueOf(txtPstorage));
				product.setGuarantee(Integer.valueOf(radioWarranty));
				product.setPublishDate(System.currentTimeMillis());
				product.setP7day("1".equals(txtP7day)?1:0);
				product.setGenuine("1".equals(txtPgenuine)?1:0);
				product.setFreight("0".equals(radioTransfee)?0:1);
				User user = this.df.getUserDao().get(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getId());
				product.setUser(user);
				product.setInvoice(Integer.valueOf(radioInvoices));
				System.out.println("select_cate:"+select_cate+"\t");
				product.setProductCate(df.getProductCateDao().get(Long.valueOf(select_cate)));
				this.df.getProductDao().save(product);
				System.out.println(radioSelltype + "\t" +txtPinfo + "\t" + txtPprice +"\t" +radioInvoices+"\t"+radioWarranty+"\t"+txtPgenuine+"\t"+txtP7day);
				((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().add(product);
//				ActionContext.getContext().getSession().put(product, product);
			}
			return "toAddProduct";
		}
		
		/**
		 * 编辑商品
		 */
		public String pid;
		private Product p;
		public Product getP() {
			return p;
		}
		public void setP(Product p) {
			this.p = p;
		}
		public String chboxPid;
		public String toEditorProduct(){
			/*
			 * 编辑产品
			 */
			if("modi".equals(action) && pid != null){
				if(isEditorProduct(pid)){
					p = df.getProductDao().get(Long.valueOf(pid));
				}
				return "toAddOwnProduct";
			}
			/*
			 * 产品上/下架
			 * 批量问题
			 */
			if("update_state".equals(action)){
				System.out.println("产品上下架的id:"+chboxPid.length());
				if(!"".equals(chboxPid) && chboxPid != null && isEditorProduct(chboxPid)){
					//当页面传过来修改的id是多个的时候
					if(chboxPid.length() > 24){  		//页面上的chboxPid长度是否大于1个md5长度...
						String[] id = chboxPid.split(",");		//取得md5码转换为数组，接收的chboxPid形式为：md5,md5
						System.out.println("chboxPid的长度："+id.length);
						for (int i = 0; i < id.length; i++) {
							System.out.println("第"+i+"次循环");
							Product editProduct = new Product();
							for (int j = 0; j < ((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().size(); j++) {
//								DESHelper.decrypt(data)
								if(DESHelper.decrypt(String.valueOf(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(j).getId())).equals(id[i].trim())){
									System.out.println("即将要持久化的id："+id[i]);
									editProduct = ((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(j);
									break;				//找到一个便跳出。进行持久化
								}
							}
							
							if(editProduct.getState() == 0 && editProduct.getState() != 2){		//此商品不能为已卖出状态
								editProduct.setState(1);			//如果为0出售状态,则修改为 1仓库
							}else{
								editProduct.setState(0);
							}

							System.out.println("决定0上/1下架的id为："+editProduct.getState());
							df.getProductDao().update(editProduct);
							System.out.println("执行产品上/下架成功！更新session.");
							//进行session的更新。
							for (int j = 0; j < ((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().size(); j++) {
								if(editProduct.getId() == ((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(j).getId()){
									 ((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(j).setState(editProduct.getState());
								}
							}
						}
					}else{
						//当页面传过来的Id只有一个的时候。
						Product editProduct = new Product();
						for (int i = 0; i < ((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().size(); i++) {
							if(DESHelper.encrypt(String.valueOf(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i).getId())).equals(chboxPid)){
								editProduct = ((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i);
							}
						}
						
						if(editProduct.getState() == 0 && editProduct.getState() != 2){
							editProduct.setState(1);
						}else{
							editProduct.setState(0);
						}
	
						System.out.println("决定0上/1下架的id为："+editProduct.getState());
						df.getProductDao().update(editProduct);
						System.out.println("执行产品上/下架成功！更新session.");
						for (int j = 0; j < ((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().size(); j++) {
							if(editProduct.getId() == ((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(j).getId()){
								 ((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(j).setState(editProduct.getState());
							}
						}
					}
				}
				return toMyProduct();
			}
			/*
			 * 删除商品
			 */
			if("del".equals(action)){
//				System.out.println("执行删除商品1");
				System.out.println("执行删除的商品id："+chboxPid);
				if(!"".equals(chboxPid) && chboxPid != null && isEditorProduct(chboxPid)){
					System.out.println("执行删除商品2");
					List<Product> tempList = df.getUserDao().get(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getId()).getProducts();
					Product editProduct = new Product();
					for (int i = 0; i < tempList.size(); i++) {
						if(DESHelper.encrypt(String.valueOf(tempList.get(i).getId())).equals(chboxPid)){
							editProduct = tempList.get(i);
						}
					}
					df.getProductDao().delete(editProduct);
					Globals.log.info("用户："+df.getUserDao().get(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getId()).getUserId()+"删除商品:"+editProduct.getName());
				}
				return "toOwnProductList";
			}
			return "error";
		}
		private boolean isEditorProduct(String pid){
			//如果session中没有数据，则到数据库取出当前用户的所有产品。
//			if(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().size() ==0){
//				ActionContext.getContext().getSession().put(Globals.userProductsList, df.getUserDao().get(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getId()).getProducts());
//			}
			if (pid.length() > 24) {
//				boolean temp = false;
				int temp = 0;
				String[] id = pid.split(",");
				for (int i = 0; i < id.length; i++) {
					if(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().size()!=0){
						for (int j = 0; j < ((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().size(); j++) {
							if(DESHelper.encrypt(String.valueOf(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(j).getId())).equals(id[i].trim())){
								System.out.println("isEditorProduct方法判断返回true的id:"+id[i]+"是第"+i+"个\t当前J为:"+j);
								temp += 1;
//								break;
							}
						}
					}
				}
				System.out.println("isEditorProduct方法临时的变量temp："+temp+"\tid的长度："+id.length);
				if(temp == id.length){
					return true;
				}
			}else{
				if(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().size()!=0){
					for (int i = 0; i < ((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().size(); i++) {
						if(DESHelper.encrypt(String.valueOf(((UserVo)ActionContext.getContext().getSession().get(Globals.loginInfo)).getProducts().get(i).getId())).equals(pid)){
							System.out.println("isEditorProduct方法判断返回true");
							return true;
						}
					}
				}
			}
			System.out.println("isEditorProduct方法判断返回false");
			return false;
		}
}
